<?php

if($_GET['desde']=="" or !is_numeric($_GET['desde']))
	$_GET['desde']=1;
if($_GET['cantidad']=="" or !is_numeric($_GET['cantidad']))
	$_GET['cantidad']=20;
	
//Para hacer que si no se pone nada busque por el mismo usuario
if(count($_GET)==3)
	$_GET['amigosde']=$_SESSION['usuario']->getId();

if($_GET['amigosde']!="")
{
	if($sesion->getUsuario()->getId() != $_GET['amigosde'] and $sesion->getUsuario()->esAmigo($_GET['amigosde']))
	{
		$sql="SELECT id_amigo as id_usuario FROM lista_amigos WHERE id_usuario=".$_GET['amigosde']." ORDER BY ultimo_cambio ASC";
		$sqlCantidad="SELECT COUNT(*)       FROM lista_amigos WHERE id_usuario=".$_GET['amigosde'];
		$usuarioTemp = new Usuario();
		$usuarioTemp->cargarUsuarioConId($_GET['amigosde']);
		//Poner las barras para el json DEPRECATED: ya no hace falta
		$titulo = 'Amigos de <a class="pipal" rel="history" href="#seccion=perfil&uuid='.$_GET[amigosde].'">'.$usuarioTemp->getNombre().' '.$usuarioTemp->getApellido1().'</a>';
		//$titulo = str_replace("\"","\\\"",$titulo);
	}
	else
	{
		$sql="SELECT id_amigo as id_usuario FROM lista_amigos WHERE id_usuario=".$sesion->getUsuario()->getId()." ORDER BY ultimo_cambio ASC";
		$sqlCantidad="SELECT COUNT(*)       FROM lista_amigos WHERE id_usuario=".$sesion->getUsuario()->getId();
		$titulo = 'Mis amigos';
	}
}
else
{
	$persona=split(" ",$_GET['persona']);
	if($_GET['provincia']!=0 and is_numeric($_GET['provincia']))
	{
		$provincia=" (id_provincia=".$_GET['provincia'].")";
		$and = " and ";
	}
		
	if(is_numeric($_GET['min']) and is_numeric($_GET['max']))
	{
		if($_GET['min']>$_GET['max'])
		{
			//Hacemos swap
			$tmp=$_GET['min'];
			$_GET['min']=$_GET['max'];
			$_GET['max']=$tmp;
		}
		
		//Si no se especifica edad, se busca en todos
		if($_GET['min']!= 14 or $_GET['max'] != 65)
		{
			$edad.=$and." (cumple <> '0000-00-00' and (DATEDIFF(now(),cumple)/365>".$_GET['min']." and DATEDIFF(now(),cumple)/365<".$_GET['max'].")) ";
			$and = " and ";
		}
		//SELECT DATEDIFF(now(),cumple)/365 from usuarios
	}
		
	
	$nombrePer = str_replace(" ","",$_GET['nombre']);
	if(strlen($nombrePer) > 0)
	{
		$nombre.=$and." (soundex(concat(nombre,apellido1,apellido2)) = soundex('".$nombrePer."') or
			soundex(concat(nombre,apellido1)) = soundex('".$nombrePer."') or
			soundex(concat(nombre)) = soundex('".$nombrePer."') or
			soundex(concat(apellido1,apellido2)) = soundex('".$nombrePer."') or
			soundex(concat(apellido1)) = soundex('".$nombrePer."') or
			soundex(concat(apellido2)) = soundex('".$nombrePer."') or
			soundex(concat(nombre,apellido2,apellido1)) = soundex('".$nombrePer."'))";
	}
	//Ponemos primero la la provincia y edad porque son mas rescritivas, asi se hace menos soundex
	if(strlen($provincia.$edad.$nombre) > 0)
	{
		$sql="select id_usuario from usuarios 
		WHERE ".$provincia." ".$edad." ".$nombre."
		";
		
		$sqlCantidad = "select count(*) from usuarios 
		WHERE ".$provincia." ".$edad." ".$nombre."
		";
	}else{
		$sql="select id_usuario from usuarios 
		WHERE 1
		";
		
		$sqlCantidad = "select count(*) from usuarios 
		WHERE 1
		";
	}

	
	/*if(strlen(trim($_GET['persona']))==0)
	{
		$sql="select id_usuario from usuarios join ultimos_cambios using (id_usuario) WHERE $edad $provincia ORDER BY hora DESC";
		$sqlCantidad="select COUNT(*) from usuarios join ultimos_cambios using (id_usuario) WHERE $edad $provincia";
	}
	elseif(count($persona)==1)
	{
		$sql="select id_usuario from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[0]."') or soundex(apellido2)=soundex('".$persona[0]."') and $edad $provincia ORDER BY hora DESC";
		$sqlCantidad="select COUNT(*) from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[0]."') or soundex(apellido2)=soundex('".$persona[0]."') and $edad $provincia";
	}
	else if(count($persona)==2)
	{
		$sql="select id_usuario from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[1]."') and $edad $provincia ORDER BY hora DESC";
		$sqlCantidad="select COUNT(*) from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[1]."') and $edad $provincia";
	}
	else
	{
		$sql="select id_usuario from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[1]."') or soundex(apellido2)=soundex('".$persona[2]."') and $edad $provincia ORDER BY hora DESC";
		$sqlCantidad="select COUNT(*) from usuarios join ultimos_cambios using (id_usuario) where soundex(nombre)=soundex('".$persona[0]."') or soundex(apellido1)=soundex('".$persona[1]."') or soundex(apellido2)=soundex('".$persona[2]."') and $edad $provincia";
	}*/
	$titulo = "Resultado de tu búsqueda";
}
$_GET['desde']--;

$totalesRes = mysql_query($sqlCantidad);

$fila = mysql_fetch_array($totalesRes);
$totales = $fila[0];

$sql .= ' LIMIT '.$_GET['desde'].','.$_GET['cantidad'];

$res=mysql_query($sql);
$usuario=new Usuario();
$jsonUsuarios = array();
while($nombre=mysql_fetch_array($res,MYSQL_ASSOC))
{
		$usuario->cargarUsuarioConId($nombre['id_usuario']);
		if($usuario->esAmigo($sesion->getUsuario()))
			$esAmigo = 1;
		else
			$esAmigo = 0;
			
		$jsonUsuario = array();
		$jsonUsuario['id'] = $usuario->getId();
		$jsonUsuario['nombre'] = $usuario->getNombre().' '.$usuario->getApellido1().' '.$usuario->getApellido2();
		$jsonUsuario['provincia'] = $usuario->getProvincia();
		$jsonUsuario['edad'] = $usuario->getEdad();
		$jsonUsuario['idFotoPrincipal'] = $usuario->getFotoIdPrincipal();
		$jsonUsuario['nFotoPrincipal'] = $usuario->getFotoNPrincipal();
		$jsonUsuario['ultimaActividad'] = $usuario->ultimaActividad();
		$jsonUsuario['esAmigo'] = $esAmigo;
		
		$jsonUsuarios[] = $jsonUsuario;
		/*$contenido.='{
				"id":"'.$usuario->getId().'",
				"nombre":"'.$usuario->getNombre().' '.$usuario->getApellido1().' '.$usuario->getApellido2().' ",
				"provincia":"'.$usuario->getProvincia().'",
				"edad":"'.$usuario->getEdad().' ",
				"idFotoPrincipal":"'.$usuario->getFotoIdPrincipal().'",
				"nFotoPrincipal":"'.$usuario->getFotoNPrincipal().'",
				"ultimaActividad":"'.$usuario->ultimaActividad().'",
				"esAmigo":"'.$esAmigo.'"
				},';*/

}

//$cantidad='{"totales":"'.$totales.'","titulo":"'.$titulo.'"},';
$info = array();
$info['totales']=$totales;
$info['titulo']=$titulo;

$json = array();
$json[] = $info;
$json[] = $jsonUsuarios;
echo json_encode($json);
//echo '[ '.trim($cantidad.$contenido,",").']';
//$contenido.="<tr><td><div>Resultados de la busqueda: <b>".mysql_num_rows($res)."</b></div></td></tr></table>
